﻿//------------------------------------------------------------------------------
// Vygenerováno programem xsd.exe, upraveno na wrapper.
//------------------------------------------------------------------------------

using System;

namespace Brjnk.GpxExplorer.Data.GPX.SerializationClasses
{
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.1")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.groundspeak.com/cache/1/0")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.groundspeak.com/cache/1/0", IsNullable = false)]
    public partial class cache1_0 : XmlClassWrapper<cache>
    {
        public cache1_0()
            : base(new cache())
        { }

        public cache1_0(cache data)
            : base(data)
        {
        }

        private void CreateCacheAttributes()
        {
            if ((object)data.attributes == null)
                data.attributes = new System.Collections.Generic.List<cacheAttribute>();
        }

        private void CreateTravelBugs()
        {
            if ((object)data.travelbugs == null)
                data.travelbugs = new System.Collections.Generic.List<cacheTravelbug>();
        }

        private void CreateLogs()
        {
            if ((object)data.logs == null)
                data.logs = new System.Collections.Generic.List<cacheLog>();
        }

        /// <remarks/>
        public string name
        {
            get
            {
                return data.name;
            }
            set
            {
                data.name = value;
            }
        }

        /// <remarks/>
        public string placed_by
        {
            get
            {
                return data.placed_by;
            }
            set
            {
                data.placed_by = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("owner", IsNullable = true)]
        public cacheOwner1_0 owner //[]
        {
            get
            {
                if (data.owner == null) return null;
                return new cacheOwner1_0(data.owner);
            }
            set
            {
                data.owner = value.WrappedData;
            }
        }

        /// <remarks/>
        public string type
        {
            get
            {
                return data.type;
            }
            set
            {
                data.type = value;
            }
        }

        /// <remarks/>
        public string container
        {
            get
            {
                return data.container;
            }
            set
            {
                data.container = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlArrayItemAttribute("attribute", typeof(cacheAttributesAttribute1_0))]
        public CollectionWrapper<cacheAttributesAttribute1_0, cacheAttribute> attributes //[][]
        {
            get
            {
                CreateCacheAttributes();
                return new CollectionWrapper<cacheAttributesAttribute1_0, cacheAttribute>(data.attributes);
            }
            set
            {
                CreateCacheAttributes();
                data.attributes = value.Data;
            }
        }

        /// <remarks/>
        public double difficulty //string
        {
            get
            {
                return data.difficulty;
            }
            set
            {
                data.difficulty = value;
            }
        }

        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool difficultySpecified
        {
            get { return data.difficultySpecified; }
            set { data.difficultySpecified = value; }
        }

        /// <remarks/>
        public double terrain //string
        {
            get
            {
                return data.terrain;
            }
            set
            {
                data.terrain = value;
            }
        }

        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool terrainSpecified
        {
            get { return data.terrainSpecified; }
            set { data.terrainSpecified = value; }
        }

        /// <remarks/>
        public string country
        {
            get
            {
                return data.country;
            }
            set
            {
                data.country = value;
            }
        }

        /// <remarks/>
        public string state
        {
            get
            {
                return data.state;
            }
            set
            {
                data.state = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("short_description", IsNullable = true)]
        public cacheShort_description1_0 short_description //[]
        {
            get
            {
                if (data.short_description == null) return null;
                return new cacheShort_description1_0(data.short_description);
            }
            set
            {
                data.short_description = value.WrappedData;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("long_description", IsNullable = true)]
        public cacheLong_description1_0 long_description //[]
        {
            get
            {
                if (data.long_description == null) return null;
                return new cacheLong_description1_0(data.long_description);
            }
            set
            {
                data.long_description = value.WrappedData;
            }
        }

        /// <remarks/>
        public string encoded_hints
        {
            get
            {
                return data.encoded_hints;
            }
            set
            {
                data.encoded_hints = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlArrayItemAttribute("log", typeof(cacheLogsLog1_0), IsNullable = false)]
        public CollectionWrapper<cacheLogsLog1_0, cacheLog> logs //[][]
        {
            get
            {
                CreateLogs();
                return new CollectionWrapper<cacheLogsLog1_0, cacheLog>(data.logs);
            }
            set
            {
                data.logs = value.Data;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlArrayItemAttribute("travelbug", typeof(cacheTravelbugsTravelbug1_0), IsNullable = false)]
        public CollectionWrapper<cacheTravelbugsTravelbug1_0, cacheTravelbug> travelbugs //[][]
        {
            get
            {
                CreateTravelBugs();
                return new CollectionWrapper<cacheTravelbugsTravelbug1_0, cacheTravelbug>(data.travelbugs);
            }
            set
            {
                data.travelbugs = value.Data;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public long id  //string
        {
            get
            {
                return data.id;
            }
            set
            {
                data.id = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public string available
        {
            get
            {
                return data.available;
            }
            set
            {
                data.available = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public string archived
        {
            get
            {
                return data.archived;
            }
            set
            {
                data.archived = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.1")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.groundspeak.com/cache/1/0")]
    public partial class cacheOwner1_0 : XmlClassWrapper<cacheOwner>
    {
        public cacheOwner1_0()
            : base(new cacheOwner())
        { }

        public cacheOwner1_0(cacheOwner data)
            : base(data)
        {
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public long id //string
        {
            get
            {
                return data.id;
            }
            set
            {
                data.id = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlTextAttribute()]
        public string Value
        {
            get
            {
                return data.Value;
            }
            set
            {
                data.Value = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.1")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.groundspeak.com/cache/1/0")]
    public partial class cacheAttributesAttribute1_0 : XmlClassWrapper<cacheAttribute>
    {
        public cacheAttributesAttribute1_0()
            : base(new cacheAttribute())
        { }

        public cacheAttributesAttribute1_0(cacheAttribute data)
            : base(data)
        {
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public long id //string
        {
            get
            {
                return data.id;
            }
            set
            {
                data.id = value;
            }
        }

        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool idSpecified
        {
            get { return data.idSpecified; }
            set { data.idSpecified = value; }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlTextAttribute()]
        public string Value
        {
            get
            {
                return data.Value;
            }
            set
            {
                data.Value = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.1")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.groundspeak.com/cache/1/0")]
    public partial class cacheShort_description1_0 : XmlClassWrapper<cacheShort_description>
    {
        public cacheShort_description1_0()
            : base(new cacheShort_description())
        { }

        public cacheShort_description1_0(cacheShort_description data)
            : base(data)
        {
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public string html
        {
            get
            {
                return data.html;
            }
            set
            {
                data.html = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlTextAttribute()] //???
        public string Value
        {
            get
            {
                return data.Value;
            }
            set
            {
                data.Value = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.1")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.groundspeak.com/cache/1/0")]
    public partial class cacheLong_description1_0 : XmlClassWrapper<cacheLong_description>
    {
        public cacheLong_description1_0()
            : base(new cacheLong_description())
        { }

        public cacheLong_description1_0(cacheLong_description data)
            : base(data)
        {
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public string html
        {
            get
            {
                return data.html;
            }
            set
            {
                data.html = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlTextAttribute()] //???
        public string Value
        {
            get
            {
                return data.Value;
            }
            set
            {
                data.Value = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.1")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.groundspeak.com/cache/1/0")]
    public partial class cacheLogsLog1_0 : XmlClassWrapper<cacheLog>
    {
        public cacheLogsLog1_0()
            : base(new cacheLog())
        { }

        public cacheLogsLog1_0(cacheLog data)
            : base(data)
        {
        }

        /// <remarks/>
        public DateTime date //string
        {
            get
            {
                return data.date;
            }
            set
            {
                data.date = value;
            }
        }

        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool dateSpecified
        {
            get { return data.dateSpecified; }
            set { data.dateSpecified = value; }
        }

        /// <remarks/>
        public string type
        {
            get
            {
                return data.type;
            }
            set
            {
                data.type = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("finder", IsNullable = true)]
        public cacheLogsLogFinder1_0 finder //[]
        {
            get
            {
                if (data.finder == null) return null;
                return new cacheLogsLogFinder1_0(data.finder);
            }
            set
            {
                data.finder = value.WrappedData;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("text", IsNullable = true)]
        public cacheLogsLogText1_0 text //[]
        {
            get
            {
                if (data.text == null) return null;
                return new cacheLogsLogText1_0(data.text);
            }
            set
            {
                data.text = value.WrappedData;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("log_wpt")]
        public cacheLogsLogLog_wpt1_0 log_wpt //[]
        {
            get
            {
                if (data.log_wpt == null) return null;
                return new cacheLogsLogLog_wpt1_0(data.log_wpt);
            }
            set
            {
                data.log_wpt = value.WrappedData;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public long id //string
        {
            get
            {
                return data.id;
            }
            set
            {
                data.id = value;
            }
        }

        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool idSpecified
        {
            get { return data.idSpecified; }
            set { data.idSpecified = value; }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.1")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.groundspeak.com/cache/1/0")]
    public partial class cacheLogsLogFinder1_0 : XmlClassWrapper<cacheLogFinder>
    {
        public cacheLogsLogFinder1_0()
            : base(new cacheLogFinder())
        { }

        public cacheLogsLogFinder1_0(cacheLogFinder data)
            : base(data)
        {
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public long id //string
        {
            get
            {
                return data.id;
            }
            set
            {
                data.id = value;
            }
        }

        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool idSpecified
        {
            get { return data.idSpecified; }
            set { data.idSpecified = value; }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlTextAttribute()]//???
        public string Value
        {
            get
            {
                return data.Value;
            }
            set
            {
                data.Value = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.1")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.groundspeak.com/cache/1/0")]
    public partial class cacheLogsLogText1_0 : XmlClassWrapper<cacheLogText>
    {
        public cacheLogsLogText1_0()
            : base(new cacheLogText())
        { }

        public cacheLogsLogText1_0(cacheLogText data)
            : base(data)
        {
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public string encoded
        {
            get
            {
                return data.encoded;
            }
            set
            {
                data.encoded = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlTextAttribute()]//???
        public string Value
        {
            get
            {
                return data.Value;
            }
            set
            {
                data.Value = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.1")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.groundspeak.com/cache/1/0")]
    public partial class cacheLogsLogLog_wpt1_0 : XmlClassWrapper<cacheLogLog_wpt>
    {
        public cacheLogsLogLog_wpt1_0()
            : base(new cacheLogLog_wpt())
        { }

        public cacheLogsLogLog_wpt1_0(cacheLogLog_wpt data)
            : base(data)
        {
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public decimal lat //string
        {
            get
            {
                return data.lat;
            }
            set
            {
                data.lat = value;
            }
        }

        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool latSpecified
        {
            get { return data.latSpecified; }
            set { data.latSpecified = value; }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public decimal lon //string
        {
            get
            {
                return data.lon;
            }
            set
            {
                data.lon = value;
            }
        }

        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool lonSpecified
        {
            get { return data.lonSpecified; }
            set { data.lonSpecified = value; }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.1")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.groundspeak.com/cache/1/0")]
    public partial class cacheTravelbugsTravelbug1_0 : XmlClassWrapper<cacheTravelbug>
    {
        public cacheTravelbugsTravelbug1_0()
            : base(new cacheTravelbug())
        { }

        public cacheTravelbugsTravelbug1_0(cacheTravelbug data)
            : base(data)
        {
        }

        /// <remarks/>
        public string name
        {
            get
            {
                return data.name;
            }
            set
            {
                data.name = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public long id //string
        {
            get
            {
                return data.id;
            }
            set
            {
                data.id = value;
            }
        }

        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool idSpecified
        {
            get { return data.idSpecified; }
            set { data.idSpecified = value; }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public string @ref
        {
            get
            {
                return data.@ref;
            }
            set
            {
                data.@ref = value;
            }
        }
    }
}